#include <iostream>
#include <string>

using namespace std;

/*
this 的好处 
    解决同名问题
使用this 时需要注意的问题
    stu * s1 = NULL;
        上述代码 会造成 s1 内部的 this == NULL
        如果内部使用 this 去进行操作 则会造成 段错误 (核心已转储)

*/
class stu
{
private:
    string name;
    int id;

public:

    void set_name(string name)
    {
        // this->name 私有里面的name
        // name 实参
        this->name = name;
    }
    void set_id(int id )
    {
        // this->id id
        // id 实参
        this->id = id;
    }
    void set_data(string name , int id)
    {
        this->set_id(id);
        this->set_name(name);
    }

    void ptint_this()
    {
        cout << this << endl;
    }
    stu()
    {

    }
    ~stu()
    {

    }
};


int main(int argc, char const *argv[])
{
    stu * s1 = NULL;
    s1->set_name("张三");

    return 0;
}
